/*************************************************
* Title：TinyToolKit
* Author：Opportunity 
* Describe：表示游戏中的角色，也是服务端框架的中间层，
 * 把连接抽象成对玩家的操作，如果把玩家踢下线，保存角色数据，向角色发送消息
* CreateTime：2020-08-18 10:22:52
* Version：1.0
* Modify Recorder：
*************************************************/

namespace TinyToolKit.Network
{
    public class Player
    {
        public string id;
        public PlayerTempData tempData;
        
        private Conn _conn;

        public Player(string id,Conn conn)
        {
            this.id = id;
            _conn = conn;
            tempData = new PlayerTempData();
        }

        public void Send(ProtocolBase proto)
        {
            _conn?.Send(proto.Encode());
        }
        
        //玩家下线
        public void Logout()
        {
            id = "";
            tempData = null;
            _conn.player = null;
            _conn.Close();
        }
    }
}
